1. Field of the Invention
The present invention relates to a robot and method and medium for localizing a robot by using a calculated covariance. More particularly, the present invention relates to a robot capable of improving the computation rate by considering whether a parameter will diverge and modifying the experiment order of offspring during evolutionary computation, when the covariance of system noise and that of measurement noise are calculated for the purpose of localizing the robot by using a Kalman filter, and a method and medium of localizing a robot by using a calculated covariance.
2. Description of the Related Art
Various types of robots have recently appeared as a result of research and development. Particularly, there are robots capable of moving inside a house by themselves for household labor.
Self-localization of mobile robots is a very important issue, and many methods have been proposed to address this.
In order to localize a robot, it is customary to attach an encoder (or odometer) to a driving unit (e.g., a wheel) of the robot or mount a gyroscope onto the robot in order to measure the correct rotational angle of the robot.
However, slip or mechanical drift of a wheel, when a robot is localized, causes error. Although such error may be negligible at first, it may accumulate and cause a problem.
A Kalman filter algorithm is conventionally used to localize a robot. However, the performance of the robot depends on the setting of covariance of system noise of the Kalman filter and that of measurement noise.
Methods of calculating the covariance of system noise and that of measurement noise includes a trial-and-error method, an on-line update method, and an evolutionary computation method. According to the trial-and-error method, various values are inputted as the covariance of system noise and that of measurement noise, and a value having the highest efficiency is selected. However, the trial-and-error method has a problem in that its efficiency may vary depending on the values inputted by the experimenter.
According to the evolutionary computation method, the covariance of system noise and that of measurement noise are calculated by measuring the error of a Kalman filter value, based on a true value obtained from experimental data in advance, and minimizing the error. However, the evolutionary computation method has a problem in that it requires a long computation time, because computation must be performed for each individual's objective function.
For example, when there are 30 individuals, 80 generations, and 40 kinds of experiments, and the computation time for a single experiment is 1 second, necessary computation time T is defined by equation (1) below.T=(1 second/1 trial)×40×30×80=96,000 sec=26.7 hour  (1)
Korean Laid-open Patent Publication No. 2004-060829 discloses a robot localization system, which is characterized in that it includes a Kalman filter for filtering the measurement noise of an absolute azimuth measurement unit. However, the disclosed invention does not propose any method for calculating the covariance of measurement noise. Particularly, the system uses a value specific thereto. Therefore, the covariance of measurement noise must be newly calculated every time the system is modified. As a result, the system efficiency degrades, and it requires a long computation time to calculate the covariance of measurement noise.
Therefore, it is requested to shorten the computation time necessary to calculate the covariance of system noise and that of measurement noise.